<!DOCTYPE html>
<html lang="en">
<head>
    <meta charset="UTF-8">
    <meta name="viewport" content="width=device-width, initial-scale=1.0">
    <title>Document</title>
</head>
<body>
  
</body>
<script>
    
    /* 
        选择结构 switch =>  多分支

        switch(表达式){
            case 常量1: 执行语句1; break;
            case 常量2: 执行语句2; break;
            case 常量3: 执行语句3; break;
            case 常量4: 执行语句4; break;
            default: 
                执行语句5; 
                break;
        }

        switch中的表达式一般是一个变量, 在case中列举出所有变量可能出现的情况, 执行对应的语句,语句执行完毕跳出当前选择结构, 

        执行流程: switch中的表达式(变量),依次和case中的常量(字面量/直接量)做全等(===)比较,如果
        结果为true,则执行对应的语句,语句执行完毕跳出当前选择结构(break), 否则继续向后比较,以此类推,全都不满足就执行default之后的语句


        break的作用是跳出当前的选择结构, 如果不添加break,会进行执行后续分支中的执行语句,而不进行判断(switch穿透/case穿透)


        小结: 

        if 一般常用于做条件判断 (if中的表达式一般是一个条件表达式)
        switch 一般常用于做数值判断 (switch中接收一个变量,列举改变了所有可能出现的情况)
    
    */
        
    // case 穿透演示
    debugger;
    var week = 1 + Math.round(Math.random()*(7 - 1)); // 1-7 (星期)
    console.log(week);

    switch(week){ // 变量  week(1-7)
        case 1:   // week === 1
            document.write("星期一,学习JS基础<br>");
            // break;
        case 2:  // week === 2
            document.write("星期二,学习JS运算符<br>");
            // break;
        case 3: 
            document.write("星期三,学习循环结构<br>");
            // break;
        case 4: 
            document.write("星期四,学习循环结构<br>");
            // break;
        case 5: 
            document.write("星期五,学习函数(方法)<br>");
            // break;
        case 6: 
            document.write("星期六,函数封装练习<br>");
            // break;
        default:
            document.write("星期天, 偷偷学习,休息!<br>");
            // break;
    }



    var week = 1 + Math.round(Math.random()*(7 - 1)); // 1-7 (星期)
    console.log(week);

    debugger;

    switch(week){ // 变量  week(1-7)

        // 此写法类型if中或的关系   week === 1 ||  week === 2 ||  week === 3 ||  week === 4 || week === 5 执行相同的语句
        case 1:   // week === 1   => 既没有执行语句,也没有设置break
        case 2:  // week === 2
        case 3: 
        case 4: 
        case 5: 
            document.write("星期"+week+",我爱学习,学习使我快乐!<br>");
            break;
        case 6: 
            document.write("星期六,我爱自习,自习使我更好的学习<br>");
            break;
        default:
            document.write("星期天, 我爱偷偷学习,我的同桌还在休息!<br>");
            break;
    }


</script>
</html>